vanilla_wowfandomcom-20200223-history
XML elements
This reference is for XML elements of the WoW XML Ui hieracry. Elements have XML properties whos values are defined by XML types. This reference covers only the major WoW UI elements, see XML properties and XML types for the rest. Note: the '''Source' notes have been removed and can be found in XML elements history.'' Summary XML elements are used to define WoW User Interface elements. These elements are used in the FrameXML '.xml' files loaded by WoW. When a FrameXML file is loaded by WoW, it processes the file's XML and from it's XML elements generates the actual UIObjects used by the WoW Lua game runtime. The root element of the WoW XML hierarcy is the Ui element. See XML UI for a general overview. Reference Curly braces {} are used to indicate when other inheriting element types maybe substituted. See XML inheritance for an explanation of WoW UI XML inheritance relationships. ''Note: Most of the information here is extracted from UI.xsd. It is by no means complete, and can change any time. All this information is taken from default interface, and should be updated with patch changes. All non-default properties you know are working should be added here with a link to a source and name of element.'' Layer Elements (LayoutFrames) FontString Displays text that can't be edited. attributies: *name *inherits *virtual *hidden *bytes *text *spacing *outline *monochrome *nonspacewrap *wordwrap *justifyH *justifyV *maxLines *indented elements: *Size *Anchors *FontHeight *Color *Shadow Texture Used for drawing textures in a frame. Is a LayoutFrame type attributies: *name *inherits *virtual *setAllPoints *hidden *file *alphaMode *horizTile *virtTile elements: *Size *Anchors *TexCoords *Color *Gradient Widgets (Frames) Frame A clean window to put any kind of widgets inside. attributies: *name *inherits *virtual *setAllPoints *hidden *alpha *parent *toplevel *movable *enableMouse *id *frameStrata *enableKeyboard *clampedToScreen *protected elements: *Size *Anchors *TitleRegion *Backdrop *HitRectInsets *Layers *Frames *Scripts *Attributes Button It's just a button you can click with mouse. Common use - executing some scripts when pressed (show/hide frame, accept quests or trades, accept or cancel changes in options etc. attributies: *name *inherits *virtual *setAllPoints *hidden *parent *toplevel *movable *frameStrata *id *text *enableMouse *enableKeyboard *clampedToScreen elements: *Size *Anchors *HitRectInsets *Layers *Frames *Scripts *NormalTexture *PushedTexture *DisabledTexture *HighlightTexture *ButtonText *NormalFont *HighlightFont *DisabledFont *PushedTextOffset CheckButton Click adds or remove check mark. Common use for options of any kind attributies: *name *inherits *virtual *hidden *parent *id *frameStrata *checked elements: *Size *Anchors *HitRectInsets *Layers *Frames *Scripts *normaltexture *pushedtexture *highlighttexture *checkedtexture *disabledcheckedtexture ColorSelect Allows you to choose a color. Used rarely for customizing addons appearance attributies: *name *hidden *parent *toplevel *movable *enableMouse *enableKeyboard elements: *Size *Anchors *Backdrop *Layers *Frames *Scripts *colorwheeltexture *colorwheelthumbtexture *colorvaluetexture *colorvaluethumbtexture Cooldown Used for spell and action buttons to show it's cooldown state attributies: *name *inherits *virtual *setAllPoints *hidden *reverse elements: *Size *Anchors DressUpModel Used for checking how some linked item will look on character. attributies: *name *scale elements: *Size *Anchors *Frames *Scripts EditBox Used to type in any kind of text. attributies: *name *inherits *virtual *hidden *parent *toplevel *enableMouse *frameStrata *font *letters *blinkSpeed *numeric *password *multiLine *historyLines *autoFocus *ignoreArrows *countInvisibleLetters elements: *Size *Anchors *Layers *Frames *Scripts *FontString GameTooltip Probably shows up a frame depending what's under cursor (player name, item etc.) attributies: *name *inherits *virtual *setAllPoints *hidden *parent *toplevel *movable *frameStrata *enableMouse *clampedToScreen elements: *Size *Anchors *Backdrop *Layers *Frames *Scripts MessageFrame A window like a frame, but for storing messages. attributies: *name *insertmode *parent *frameStrata *toplevel *displayduration elements: *Size *Anchors *Scripts *FontString Minimap This is specific element for a radar showing you detailed map with units/resources on it attributies: *name *enableMouse *minimapplayermodel *minimaparrowmodel elements: *Size *Anchors *Frames *Scripts Model Real purpose unknown. Probably allows to show up some 3D object inside attributies: *name *inherits *virtual *setAllPoints *hidden *alpha *file *scale elements: *Size *Anchors *Scripts PlayerModel Real purpose unknown. Probably for showing 3D portrait. attributies: *name elements: *Size *Anchors *Frames *Scripts ScrollFrame Window that allows to scroll in up/down to show more info (As example - quest log) attributies: *name *inherits *virtual *hidden elements: *Size *Anchors *Layers *Frames *Scripts *scrollchild ScrollingMessageFrame Same as scrollframe but for messages only attributies: *name *inherits *virtual *hidden *parent *toplevel *frameStrata *id *displayduration *maxLines *movable *enableMouse *resizable elements: *Size *Anchors *TitleRegion *ResizeBounds *Layers *Frames *Scripts *FontString SimpleHTML Shows up a window with content organized as in html file. Still only some common tags of html are supported, so it's impossible to load html pages inside it. attributies: *name elements: *Size *Anchors *FontString Slider A scroll bar for scrolling elements. attributies: *name *orientation *minvalue *maxvalue *valuestep *defaultvalue *inherits *virtual *enableMouse *id elements: *Size *Anchors *Backdrop *HitRectInsets *Layers *Frames *Scripts *ThumbTexture StatusBar Used in casing bar. attributies: *name *drawlayer *virtual *toplevel *parent *hidden *inherits *minvalue *maxvalue *defaultvalue *id *enableMouse elements: *Size *Anchors *HitRectInsets *Layers *Frames *Scripts *bartexture *barcolor TabardModel Showing up tabard. attributies: *name elements: *Size *Anchors *Layers *Frames *Scripts TaxiRouteFrame Probably for showing up fly routes. attributies: *name elements: *Size *Anchors WorldFrame A layout frame type that holds a 3D view of the world. This type is not nomrally very useful for AddOn development, and is used by the system for displaying the world view and related. AddOns should use the UIParent as their topmost parent and not any frames derrived from this type. attributies: *name *setAllPoints *movable *resizable elements: *Layers *Frames *Scripts UIParent This is not actually a Frame type, but a named instance of Frame, named "UIParent". Whats special about this system frame is that every addon you use loaded by default inside it (if parent attribute not defined). Also it's important that when you toggle addons visibility to take screenshot this frame becomes hidden, so any of its content not drawn. If you put your upmost addon frame outside of this frame, your addon will be visible always. For example when a user toggles UI visibility, its toggling the visibility of UIParent. To be a good citizen always use UIParent as your topmost parent, which can be done by leaving the parent of your topmost parents blank. Animation Elements Elements that help define animations for the WoW UI animation system. Both Animation and AnimationGroup can have scripts just like Frames do. Added in 3.1.0. Blue posts. AnimationGroup Groups animation elements into a list for a Frame. Animation elements are added to an AnimationGroup, or under Ui. Animation Base type for all animation elements. Actual funcitonal animation elements must be one of the derrived types. Can also be defined in Ui as base for other animations. Translation Animation element type that moves its target. Scale Animation element type that scales or stretches its target. Rotation Animation element type that rotates its target. Alpha Animation element type that changes the alpha of its target. Path Animation element type that defines a traditional animation path for its target using ControlPoints. Other Elements Include This tag contains only one attribute file, which refers to another .xml source file to load. Script This tag can have attribute tag file witch refers to a script (.lua) file to be loaded. Other way script just putted inside tag as a plain text. Font Defines a complete font for use in other elements. attributies: *name *inherits *virtual *font *outline *monochrome *justifyH *justifyV elements: *FontHeight *Color *Shadow Category:Interface customization